<?php
namespace app\admin\controller;

use think\Controller;
use think\Db;

/**
 *  配置信息
 */
class Config extends Basic
{
    // 初始化
    private $model;
    public function _initialize()
    {
        parent::_initialize();
        $this->model=new \app\admin\model\Config();
    }


    /**
     * 生成带参数二维码  判断是否是IOS解除禁用
     * Date: 2019/1/7
     * Time: 10:38
     * USER:GCQ
     */
    public function is_ios()
    {
        $path = 'pages/index/index?is_ios=1';
//        $path = 'is_ios=1';
        //实例化数据库
        $token = token();
        //获取二维码
        //$url = "https://api.weixin.qq.com/wxa/getwxacode?access_token=".$token;
        $url="https://api.weixin.qq.com/cgi-bin/wxaapp/createwxaqrcode?access_token=".$token;
        //跳转页面
        $data = array(
            'path' => $path,
        );
        $code = json_encode($data);
        $imgInfo = $this->api_notice_increment($url, $code);
        $local = 'static/Code/' . date('YmdHis') . rand(1221212, 1212012102102) . '.png';
        file_put_contents($local, $imgInfo);
        sleep(3);
//        $code_url = $this->upImg($local);
//        print_t($code_url);
        return config('server_url').'/'.$local;

    }




    /**
     * 设置年份价格
     */
    public function set_price()
    {
        if (!$this->request->isPost()){
            json_fail('请求类型错误');
        }
        $request=input();

        $res=$this->set_money($request);

        if (empty($res)){
            json_success('设置失败');
        }
        json_success('设置成功');
    }
    /**
     * 显示年份价格
     */
    public function view_price()
    {
       $half_year= \app\admin\model\Config::getByKey('magazine_half_year_price'); //半年
       $annual= \app\admin\model\Config::getByKey('magazine_annual_price');        //全年
        $data['magazine_half_year_price']=$half_year['value']/100;
        $data['magazine_annual_price']=$annual['value']/100;
        if (!empty($data)){
            json_success($data);
        }
        json_success([]);
    }

    /**
     * 显示关于我们
     */
    public function view_about_us()
    {
        $about=\app\admin\model\Config::getByKey('about_us');//关于我们
        $about_us=$about['value'];

        if (!empty($about_us)){
            json_success($about_us);
        }
        json_success([]);
    }

    /**
     * 修改年份价格
     */
    public function set_money($data)
    {
        $result='';
        if ($data) {
            foreach ($data as $k => $v) {
                $result .= $this->model->where(array('key' => $k))->update(array('value' => $v*100));
            }
        }
        return $result;
    }

    /**
     * 设置关于我们
     */
    public function about()
    {
        if (!$this->request->isPost()){
            json_fail('请求类型错误');
        }
        $request=input();

        $res=$this->modConfig($request);
        if (empty($res)){
            json_success('设置失败');
        }
        json_success('设置成功');
    }




    //添加帮助中心
    public function add_about_us()
    {
        $token = input('post.token');
        if (!$token) {
            json_fail(data('-2', 'token不能为空!'));
        }
        if ($token == encryption(config('config.token'))) {
            $data['about_us'] = input('post.about_us');
            if (!$data['about_us']) {
                json_fail(data('-2', '内容不能为空!'));
            }
            //查询数据
            $result = $this->modConfig($data);
            if ($result !== false) {
                json_success(data('1', '保存成功'));
            } else {
                json_fail(data('-1', '保存失败'));
            }
        } else {
            json_fail(data('-3', 'token验证错误!'));
        }
    }


    //返回帮助中心
    public function about_us()
    {
        $Config = Db('config');
        $token = input('post.token');
        if (!$token) {
            json_fail(data('-2', 'token不能为空!'));
        }
        if ($token == encryption(config('config.token'))) {
            //查询数据
            $info['about_us'] = $Config->getFieldBykey('about_us', 'value');
            if (!$info) {
                json_fail([]);
            } else {
                json_success($info);
            }
        } else {
            json_fail(data('-3', 'token验证错误!'));
        }
    }

    /*
    *  首页-公众号-图片
    */
    public function index_wechat_picture()
    {
        //查询数据
        $info['index_wechat_picture'] =Db('config')->getFieldBykey('index_wechat_picture', 'value');
        $info['index_wechat_url'] =  Db('config')->getFieldBykey('index_wechat_url', 'value');
        if (!$info) {
            json_fail([]);
        } else {
            json_success($info);
        }
    }


    /*
    *  手作展示
    */
    public function hand_display()
    {
        $Config = Db('config');
        //查询数据
        $info['hand_display'] = $Config->getFieldBykey('hand_display', 'value');
        if (!$info) {
            json_fail([]);
        } else {
            json_success($info);
        }
    }





    /*
    *  通用设置
    */
    public function SetConfig()
    {
        $data = input('post.');
        //查询数据
        $result = $this->modConfig($data);
        if ($result !== false) {
            json_success(data('1', '保存成功'));
        } else {
            json_fail(data('-1', '保存失败'));
        }
    }



    /**
     * User: Administrator
     * Date: 2018/9/11
     * Time: 20:45
     * 显示上传图片和地址
     */
    public function whole_country_show()
    {
        $Config = Db('Config');
        $value = $Config->where('key','whole_country')->value('value');
        $url = $Config->where('key','Url')->value('value');
        $is_open = $Config->where('key','is_open')->value('value');
        $list = array(
            'value'=>$value,
            'url'=>$url,
            'is_open'=>$is_open,
        );
        json_success($list);
    }


    /**
     * 公共方法: 修改config数据
     */
    public function modConfig($data)
    {
        $Config = Db('Config');
        if ($data) {
            foreach ($data as $k => $v) {
                $result = $Config->where(array('key' => $k))->update(array('value' => $v));
            }
        }
        return $result;
    }


    /**
     * 展示电话
     */
    public function show_phone(){
        $config = new \app\admin\model\Config();

        $phone = $config->where(array('key'=>'public_adviser_phone'))->value('value');
        json_success($phone);
    }

    /**
     * 设置电话
     */
    public function set_public_adviser_phone(){
        $mobile = input('mobile');

        if(!$mobile){
            json_fail('获取手机错误');
        }
        $config = new \app\admin\model\Config();

        $info = $config->where(array('key'=>'public_adviser_phone'))->update(array('value'=>$mobile));
        if($info === false){
            json_fail('设置失败');
        }
        json_success('设置成功');
    }


    /**
     * 展示跳过绑定手机号码开关
     */
    public function show_skip_bind_mobil_switch(){
        $config = new \app\admin\model\Config();

        $status = $config->where(array('key'=>'skip_bind_mobil_switch'))->value('value');
        json_success($status);
    }

    /**
     * 设置跳过绑定手机号码开关
     */
    public function set_skip_bind_mobil_switch(){
        $status= input('status',1);

        if(!$status){
            json_fail('获取手机错误');
        }
        $config = new \app\admin\model\Config();

        $info = $config->where(array('key'=>'skip_bind_mobil_switch'))->update(array('value'=>$status));
        if($info === false){
            json_fail('设置失败');
        }
        json_success('设置成功');
    }
}

